using System;
using FytSoa.Common.Utils;
using System.ComponentModel.DataAnnotations;
using FytSoa.Domain.Hr;
using SqlSugar;

namespace FytSoa.Application.Hr;

/// <summary>
/// 人力-工作汇报
/// </summary>
public class HrWorkReportDto : AppEntity
{
    /// <summary>
    /// 员工编号
    /// </summary>
    [Required]
    public long EmployeeId { get; set; }
    
    /// <summary>
    /// 汇报人
    /// </summary>
    public HrEmployeeSimpleDto EmployeeObj { get; set; }

    /// <summary>
    /// 汇报类型(1/日报2周报/3月报)
    /// </summary>
    [Required]
    public int ReportType { get; set; } = 1;

    /// <summary>
    /// 接收人编号
    /// </summary>
    [Required]
    public long ReceiveId { get; set; }
    
    /// <summary>
    /// 接收人
    /// </summary>
    public HrEmployeeSimpleDto ReceiveObj { get; set; }

    /// <summary>
    /// 进入工作内容
    /// </summary>
    [Required]
    [StringLength(1000)]
    public string Content { get; set; }

    /// <summary>
    /// 明日计划
    /// </summary>
    public string Plan { get; set; }

    /// <summary>
    /// 附件
    /// </summary>
    public string Attachment { get; set; }

    /// <summary>
    /// 创建时间
    /// </summary>
    public DateTime CreateTime { get; set; } = DateTime.Now;

    /// <summary>
    /// 创建人
    /// </summary>
    public string CreateUser { get; set; }

    /// <summary>
    /// 修改时间
    /// </summary>
    public DateTime? UpdateTime { get; set; }

    /// <summary>
    /// 修改人
    /// </summary>
    public string UpdateUser { get; set; }


}